This is an R Markdown Notebook. When you execute code within the notebook, the results appear beneath the code.

Try executing this chunk by clicking the Run button within the chunk or by placing your cursor inside it and pressing Ctrl+Shift+Enter.

install.packages("forecast")
Installing package into ‘C:/Users/parmi/AppData/Local/R/win-library/4.2’
(as ‘lib’ is unspecified)
trying URL 'https://cran.rstudio.com/bin/windows/contrib/4.2/forecast_8.18.zip'
Content type 'application/zip' length 1895007 bytes (1.8 MB)
downloaded 1.8 MB
package ‘forecast’ successfully unpacked and MD5 sums checked

The downloaded binary packages are in
    C:\Users\parmi\AppData\Local\Temp\RtmpI5a4Fj\downloaded_packages
install.packages("plotly")
Installing package into ‘C:/Users/parmi/AppData/Local/R/win-library/4.2’
(as ‘lib’ is unspecified)
trying URL 'https://cran.rstudio.com/bin/windows/contrib/4.2/plotly_4.10.1.zip'
Content type 'application/zip' length 3244124 bytes (3.1 MB)
downloaded 3.1 MB
package ‘plotly’ successfully unpacked and MD5 sums checked

The downloaded binary packages are in
    C:\Users\parmi\AppData\Local\Temp\RtmpI5a4Fj\downloaded_packages
install.packages("tidyr")
Installing package into ‘C:/Users/parmi/AppData/Local/R/win-library/4.2’
(as ‘lib’ is unspecified)
trying URL 'https://cran.rstudio.com/bin/windows/contrib/4.2/tidyr_1.2.1.zip'
Content type 'application/zip' length 967296 bytes (944 KB)
downloaded 944 KB
package ‘tidyr’ successfully unpacked and MD5 sums checked

The downloaded binary packages are in
    C:\Users\parmi\AppData\Local\Temp\RtmpI5a4Fj\downloaded_packages
install.packages("dplyr")
Installing package into ‘C:/Users/parmi/AppData/Local/R/win-library/4.2’
(as ‘lib’ is unspecified)
trying URL 'https://cran.rstudio.com/bin/windows/contrib/4.2/dplyr_1.0.10.zip'
Content type 'application/zip' length 1305081 bytes (1.2 MB)
downloaded 1.2 MB
package ‘dplyr’ successfully unpacked and MD5 sums checked

The downloaded binary packages are in
    C:\Users\parmi\AppData\Local\Temp\RtmpI5a4Fj\downloaded_packages
library(forecast)
Registered S3 method overwritten by 'quantmod':
  method            from
  as.zoo.data.frame zoo 
data(EuStockMarkets)
summary(EuStockMarkets)
      DAX            SMI            CAC            FTSE     
 Min.   :1402   Min.   :1587   Min.   :1611   Min.   :2281  
 1st Qu.:1744   1st Qu.:2166   1st Qu.:1875   1st Qu.:2843  
 Median :2141   Median :2796   Median :1992   Median :3247  
 Mean   :2531   Mean   :3376   Mean   :2228   Mean   :3566  
 3rd Qu.:2722   3rd Qu.:3812   3rd Qu.:2274   3rd Qu.:3994  
 Max.   :6186   Max.   :8412   Max.   :4388   Max.   :6179  
class(EuStockMarkets)
[1] "mts"    "ts"     "matrix"
par(mfrow=c(4,1))

x <- seq_len(nrow(EuStockMarkets))
for (i in seq_len(ncol(EuStockMarkets))) {
    y <- EuStockMarkets[,i]
    heading <- colnames(EuStockMarkets)[i]
    plot(x, y, type="n", main = heading, xaxt = "n")
    lines(x, EuStockMarkets[,i])
    years <- as.integer(time(EuStockMarkets))
    tick.posis <- seq(10, length(years), by = 100)
    axis(1, at = tick.posis, las = 2, labels = years[tick.posis])
}

plot(EuStockMarkets)

library(plotly)
Loading required package: ggplot2
Registered S3 method overwritten by 'data.table':
  method           from
  print.data.table     
Registered S3 method overwritten by 'htmlwidgets':
  method           from         
  print.htmlwidget tools:rstudio

Attaching package: ‘plotly’

The following object is masked from ‘package:ggplot2’:

    last_plot

The following object is masked from ‘package:stats’:

    filter

The following object is masked from ‘package:graphics’:

    layout
library(tidyr)
library(dplyr)

Attaching package: ‘dplyr’

The following objects are masked from ‘package:stats’:

    filter, lag

The following objects are masked from ‘package:base’:

    intersect, setdiff, setequal, union
stocks <- as.data.frame(EuStockMarkets) %>%
  gather(index, price) %>%
  mutate(time = rep(time(EuStockMarkets), 4))
plot_ly(stocks, x = ~time, y = ~price, color = ~index, mode = "lines")
No trace type specified:
  Based on info supplied, a 'scatter' trace seems appropriate.
  Read more about this trace type -> https://plotly.com/r/reference/#scatter
No trace type specified:
  Based on info supplied, a 'scatter' trace seems appropriate.
  Read more about this trace type -> https://plotly.com/r/reference/#scatter
ftse=(EuStockMarkets[,4])
plot(ftse)

components.ts = decompose(ftse)
plot(components.ts)

fit_ftse <- auto.arima(ftse, trace=TRUE)

 Fitting models using approximations to speed things up...

 ARIMA(2,1,2)(1,0,1)[260] with drift         : Inf
 ARIMA(0,1,0)             with drift         : 17994.59
 ARIMA(1,1,0)(1,0,0)[260] with drift         : Inf
 ARIMA(0,1,1)(0,0,1)[260] with drift         : Inf
 ARIMA(0,1,0)                                : 17997.78
 ARIMA(0,1,0)(1,0,0)[260] with drift         : Inf
 ARIMA(0,1,0)(0,0,1)[260] with drift         : Inf
 ARIMA(0,1,0)(1,0,1)[260] with drift         : Inf
 ARIMA(1,1,0)             with drift         : 17968.54
 ARIMA(1,1,0)(0,0,1)[260] with drift         : Inf
 ARIMA(1,1,0)(1,0,1)[260] with drift         : Inf
 ARIMA(2,1,0)             with drift         : 17970.46
 ARIMA(1,1,1)             with drift         : 17969.53
 ARIMA(0,1,1)             with drift         : 17966.98
 ARIMA(0,1,1)(1,0,0)[260] with drift         : Inf
 ARIMA(0,1,1)(1,0,1)[260] with drift         : Inf
 ARIMA(0,1,2)             with drift         : 17968.91
 ARIMA(1,1,2)             with drift         : Inf
 ARIMA(0,1,1)                                : 17969.15

 Now re-fitting the best model(s) without approximations...

 ARIMA(0,1,1)             with drift         : 17973.84

 Best model: ARIMA(0,1,1)             with drift         
forecaste_ftse <- forecast(fit_ftse, 50)
plot(forecaste_ftse, main = "Graph with forecasting of ftse",col.main = "darkgreen") 

print(forecaste_ftse)
cac=(EuStockMarkets[,3])
plot(cac)

components.ts = decompose(cac)
plot(components.ts)
fit_cac <- auto.arima(cac, trace=TRUE)

 Fitting models using approximations to speed things up...

 ARIMA(2,2,2)(1,0,1)[260]                    : Inf
 ARIMA(0,2,0)                                : 18628.27
 ARIMA(1,2,0)(1,0,0)[260]                    : Inf
 ARIMA(0,2,1)(0,0,1)[260]                    : Inf
 ARIMA(0,2,0)(1,0,0)[260]                    : Inf
 ARIMA(0,2,0)(0,0,1)[260]                    : Inf
 ARIMA(0,2,0)(1,0,1)[260]                    : Inf
 ARIMA(1,2,0)                                : 18120.13
 ARIMA(1,2,0)(0,0,1)[260]                    : Inf
 ARIMA(1,2,0)(1,0,1)[260]                    : Inf
 ARIMA(2,2,0)                                : 17967.71
 ARIMA(2,2,0)(1,0,0)[260]                    : Inf
 ARIMA(2,2,0)(0,0,1)[260]                    : Inf
 ARIMA(2,2,0)(1,0,1)[260]                    : Inf
 ARIMA(3,2,0)                                : 17841.46
 ARIMA(3,2,0)(1,0,0)[260]                    : Inf
 ARIMA(3,2,0)(0,0,1)[260]                    : Inf
 ARIMA(3,2,0)(1,0,1)[260]                    : Inf
 ARIMA(4,2,0)                                : 17783.76
 ARIMA(4,2,0)(1,0,0)[260]                    : Inf
 ARIMA(4,2,0)(0,0,1)[260]                    : Inf
 ARIMA(4,2,0)(1,0,1)[260]                    : Inf
 ARIMA(5,2,0)                                : 17694.23
 ARIMA(5,2,0)(1,0,0)[260]                    : Inf
 ARIMA(5,2,0)(0,0,1)[260]                    : Inf
 ARIMA(5,2,0)(1,0,1)[260]                    : Inf
 ARIMA(5,2,1)                                : 17427.49
 ARIMA(5,2,1)(1,0,0)[260]                    : Inf
 ARIMA(5,2,1)(0,0,1)[260]                    : 17429.08
 ARIMA(5,2,1)(1,0,1)[260]                    : Inf
 ARIMA(4,2,1)                                : Inf
 ARIMA(5,2,2)                                : Inf
 ARIMA(4,2,2)                                : Inf

 Now re-fitting the best model(s) without approximations...

 ARIMA(5,2,1)                                : Inf
print(forecaste_cac)
smi=(EuStockMarkets[,2])
plot(smi)
components.ts = decompose(smi)
plot(components.ts)
fit_smi <- auto.arima(smi, trace=TRUE)
forecaste_smi <- forecast(fit_smi, 50)
plot(forecaste_smi, main = "Graph with forecasting of smi",col.main = "darkgreen") 
print(forecaste_smi)
dax=(EuStockMarkets[,1])
plot(dax)
components.ts = decompose(dax)
plot(components.ts)
fit_dax <- auto.arima(dax, trace=TRUE)
forecaste_dax <- forecast(fit_dax, 50)
plot(forecaste_dax, main = "Graph with forecasting of dax",col.main = "darkgreen") 
print(forecaste_dax)
LS0tDQp0aXRsZTogIlIgTm90ZWJvb2siDQpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sNCi0tLQ0KDQpUaGlzIGlzIGFuIFtSIE1hcmtkb3duXShodHRwOi8vcm1hcmtkb3duLnJzdHVkaW8uY29tKSBOb3RlYm9vay4gV2hlbiB5b3UgZXhlY3V0ZSBjb2RlIHdpdGhpbiB0aGUgbm90ZWJvb2ssIHRoZSByZXN1bHRzIGFwcGVhciBiZW5lYXRoIHRoZSBjb2RlLiANCg0KVHJ5IGV4ZWN1dGluZyB0aGlzIGNodW5rIGJ5IGNsaWNraW5nIHRoZSAqUnVuKiBidXR0b24gd2l0aGluIHRoZSBjaHVuayBvciBieSBwbGFjaW5nIHlvdXIgY3Vyc29yIGluc2lkZSBpdCBhbmQgcHJlc3NpbmcgKkN0cmwrU2hpZnQrRW50ZXIqLiANCg0KYGBge3J9DQppbnN0YWxsLnBhY2thZ2VzKCJmb3JlY2FzdCIpDQppbnN0YWxsLnBhY2thZ2VzKCJwbG90bHkiKQ0KaW5zdGFsbC5wYWNrYWdlcygidGlkeXIiKQ0KaW5zdGFsbC5wYWNrYWdlcygiZHBseXIiKQ0KYGBgDQoNCmBgYHtyfQ0KbGlicmFyeShmb3JlY2FzdCkNCmBgYA0KDQoNCmBgYHtyfQ0KZGF0YShFdVN0b2NrTWFya2V0cykNCnN1bW1hcnkoRXVTdG9ja01hcmtldHMpDQpgYGANCmBgYHtyfQ0KY2xhc3MoRXVTdG9ja01hcmtldHMpDQoNCmBgYA0KDQpgYGB7cn0NCnBhcihtZnJvdz1jKDQsMSkpDQoNCnggPC0gc2VxX2xlbihucm93KEV1U3RvY2tNYXJrZXRzKSkNCmZvciAoaSBpbiBzZXFfbGVuKG5jb2woRXVTdG9ja01hcmtldHMpKSkgew0KICAgIHkgPC0gRXVTdG9ja01hcmtldHNbLGldDQogICAgaGVhZGluZyA8LSBjb2xuYW1lcyhFdVN0b2NrTWFya2V0cylbaV0NCiAgICBwbG90KHgsIHksIHR5cGU9Im4iLCBtYWluID0gaGVhZGluZywgeGF4dCA9ICJuIikNCiAgICBsaW5lcyh4LCBFdVN0b2NrTWFya2V0c1ssaV0pDQogICAgeWVhcnMgPC0gYXMuaW50ZWdlcih0aW1lKEV1U3RvY2tNYXJrZXRzKSkNCiAgICB0aWNrLnBvc2lzIDwtIHNlcSgxMCwgbGVuZ3RoKHllYXJzKSwgYnkgPSAxMDApDQogICAgYXhpcygxLCBhdCA9IHRpY2sucG9zaXMsIGxhcyA9IDIsIGxhYmVscyA9IHllYXJzW3RpY2sucG9zaXNdKQ0KfQ0KYGBgDQpgYGB7cn0NCnBsb3QoRXVTdG9ja01hcmtldHMpDQpgYGANCmBgYHtyfQ0KbGlicmFyeShwbG90bHkpDQpsaWJyYXJ5KHRpZHlyKQ0KbGlicmFyeShkcGx5cikNCnN0b2NrcyA8LSBhcy5kYXRhLmZyYW1lKEV1U3RvY2tNYXJrZXRzKSAlPiUNCiAgZ2F0aGVyKGluZGV4LCBwcmljZSkgJT4lDQogIG11dGF0ZSh0aW1lID0gcmVwKHRpbWUoRXVTdG9ja01hcmtldHMpLCA0KSkNCnBsb3RfbHkoc3RvY2tzLCB4ID0gfnRpbWUsIHkgPSB+cHJpY2UsIGNvbG9yID0gfmluZGV4LCBtb2RlID0gImxpbmVzIikNCmBgYA0KDQpgYGB7cn0NCmZ0c2U9KEV1U3RvY2tNYXJrZXRzWyw0XSkNCnBsb3QoZnRzZSkNCmNvbXBvbmVudHMudHMgPSBkZWNvbXBvc2UoZnRzZSkNCnBsb3QoY29tcG9uZW50cy50cykNCmZpdF9mdHNlIDwtIGF1dG8uYXJpbWEoZnRzZSwgdHJhY2U9VFJVRSkNCmZvcmVjYXN0ZV9mdHNlIDwtIGZvcmVjYXN0KGZpdF9mdHNlLCA1MCkNCnBsb3QoZm9yZWNhc3RlX2Z0c2UsIG1haW4gPSAiR3JhcGggd2l0aCBmb3JlY2FzdGluZyBvZiBmdHNlIixjb2wubWFpbiA9ICJkYXJrZ3JlZW4iKSANCg0KYGBgDQpgYGB7cn0NCnByaW50KGZvcmVjYXN0ZV9mdHNlKQ0KYGBgDQpgYGB7cn0NCmNhYz0oRXVTdG9ja01hcmtldHNbLDNdKQ0KcGxvdChjYWMpDQpjb21wb25lbnRzLnRzID0gZGVjb21wb3NlKGNhYykNCnBsb3QoY29tcG9uZW50cy50cykNCmZpdF9jYWMgPC0gYXV0by5hcmltYShjYWMsIHRyYWNlPVRSVUUpDQpmb3JlY2FzdGVfY2FjIDwtIGZvcmVjYXN0KGZpdF9jYWMsIDUwKQ0KcGxvdChmb3JlY2FzdGVfY2FjLCBtYWluID0gIkdyYXBoIHdpdGggZm9yZWNhc3Rpbmcgb2YgY2FjIixjb2wubWFpbiA9ICJkYXJrZ3JlZW4iKSANCmBgYA0KDQpgYGB7cn0NCnByaW50KGZvcmVjYXN0ZV9jYWMpDQpgYGANCg0KYGBge3J9DQpzbWk9KEV1U3RvY2tNYXJrZXRzWywyXSkNCnBsb3Qoc21pKQ0KY29tcG9uZW50cy50cyA9IGRlY29tcG9zZShzbWkpDQpwbG90KGNvbXBvbmVudHMudHMpDQpmaXRfc21pIDwtIGF1dG8uYXJpbWEoc21pLCB0cmFjZT1UUlVFKQ0KZm9yZWNhc3RlX3NtaSA8LSBmb3JlY2FzdChmaXRfc21pLCA1MCkNCnBsb3QoZm9yZWNhc3RlX3NtaSwgbWFpbiA9ICJHcmFwaCB3aXRoIGZvcmVjYXN0aW5nIG9mIHNtaSIsY29sLm1haW4gPSAiZGFya2dyZWVuIikgDQpgYGANCg0KYGBge3J9DQpwcmludChmb3JlY2FzdGVfc21pKQ0KYGBgDQoNCg0KYGBge3J9DQpkYXg9KEV1U3RvY2tNYXJrZXRzWywxXSkNCnBsb3QoZGF4KQ0KY29tcG9uZW50cy50cyA9IGRlY29tcG9zZShkYXgpDQpwbG90KGNvbXBvbmVudHMudHMpDQpmaXRfZGF4IDwtIGF1dG8uYXJpbWEoZGF4LCB0cmFjZT1UUlVFKQ0KZm9yZWNhc3RlX2RheCA8LSBmb3JlY2FzdChmaXRfZGF4LCA1MCkNCnBsb3QoZm9yZWNhc3RlX2RheCwgbWFpbiA9ICJHcmFwaCB3aXRoIGZvcmVjYXN0aW5nIG9mIGRheCIsY29sLm1haW4gPSAiZGFya2dyZWVuIikgDQpgYGANCg0KYGBge3J9DQpwcmludChmb3JlY2FzdGVfZGF4KQ0KYGBgDQoNCg==